Administering a computer can be difficult and painstaking work for even the most knowledgeable users. Even though the task of system administration is difficult, and is fraught with potential problems, it is typically left to individual users having limited knowledge of system administration. As a result, these computer systems are likely to be incorrectly configured, undependable, brittle, as well as insecure and result in productivity losses for the individual users as well as for businesses. It has been estimated that it costs employers $6,000 a year for each user who attempts to configure their computers. The time is typically spent installing and uninstalling programs, updates, and the like to their system. The computer system's correctness ultimately depends, therefore, on the correctness and the appropriateness of every install and uninstall that has ever been performed on the system. An incorrectly configured system results in an inefficient system that decreases performance, or a non-functional system that cannot perform the desired tasks, or an insecure system that might be open to an attacker.